home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / web / c_cpp / cwebx / announcement < prev    next >
Encoding:
Text File  |  1995-02-14  |  3.5 KB  |  65 lines

  1. Release of CWEBx3.0, another implementation of CWEB
  2. ===================================================
  3.  
  4. After several versions with beta status, CWEBx is now officially released as
  5. version CWEBx3.0. The system is available at
  6.  
  7.             ftp://ftp.cwi.nl/pub/cweb
  8.  
  9. and will hopefully also be available soon at the Literate Programming Archive
  10. (ftp://ftp.th-darmstadt.de/pub/programming/literate-programming/c.c++) and
  11. at the CTAN sites. An earlier version was released last year under the name
  12. `CWEB 3.x'. With respect to that version the main changes are improved
  13. compatibility with Levy/Knuth CWEB, and greater reliability. All extras that
  14. were added in Levy/Knuth CWEB have been incorporated, and a compatibility
  15. mode is added in which the external behaviour of Levy/Knuth CWEB is
  16. simulated exactly. The main version number `3' now indicates compatibility
  17. with the corresponding major version of Levy/Knuth CWEB, which was not the
  18. case for CWEB 3.x. (The minor version numbers of Levy/Knuth CWEB only involve
  19. bug fixes that are usually not relevant to CWEBx; all bugs that are repaired
  20. in Levy/Knuth CWEB 3.3, and many that are not, are absent in CWEBx3.0). A
  21. few new features have also been added, mainly to increase flexibility of use.
  22.  
  23. As a reminder, here is a summary of the new aspects that were already
  24. present in CWEB 3.x.
  25.  
  26. - The effect of typedef declarations on formatting extends over the complete
  27.   source text, rather then starting at the declaration itself.
  28. - A control code for inclusion of header files, which causes any typedef
  29.   declarations in the header file to be taken into account in formatting.
  30. - A mechanism for referring to section numbers using symbolic labels.
  31. - A control code to start a section without allowing a page break.
  32. - A control code to denote the bitwise-or operator `|' within `|...|'.
  33. - A control code to force a negative indentation by one unit on a line.
  34. - The size of an indentation can be controlled by a parameter.
  35. - A defaulting mechanism on command line to use change file if it is present.
  36. - CTANGLE matches parentheses and braces in macros and modules bodies.
  37. - Several layout styles may be selected from the command line.
  38. - Irreducible scrap sequences can be shown without changing the source files.
  39. - Automatic breaking of long expressions using precedence rules.
  40. - New and modular set of grammar rules, based directly on the ANSI C syntax.
  41. - Syntax category of module names can be controlled; default is statement.
  42. - A completely new manual, with a one-page table of all control codes.
  43.  
  44. - CWEB programs are system independent, no change files needed.
  45. - Organisation of programs is much more C-like, using ordinary header files
  46.   for communication between compilation units.
  47. - Documentation of source code is improved, programs are more literate.
  48.  
  49. The following features are the main additions made since CWEB 3.x
  50.  
  51. - Control codes @s, @q, @l, @h, from Levy/Knuth CWEB.
  52. - Relaxation of the rules, e.g. for module names, as in Levy/Knuth CWEB.
  53. - Compatibility mode with Levy/Knuth CWEB.
  54. - Possibility to send index and module names to separate files.
  55. - Possibility to get human-oriented output from CTANGLE, omitting #line,
  56.   but retaining comments and indentation.
  57. - Possibility to specify search path for header files on command line.
  58. - Possibility to indicate that a typedef identifier is used as an ordinary
  59.   one, e.g., as a field in a structure.
  60. - Possibility to treat short compound statments as simple ones in formatting.
  61. - An improved and even more complete manual (now 32 pages).
  62.  
  63. Marc van Leeuwen
  64. CWI, Amsterdam
  65.